#ifndef APPLICATIONCONFIGURATION_H
#define APPLICATIONCONFIGURATION_H

#include <QList>
#include "host.h"

class ApplicationConfiguration
{

private:
    ApplicationConfiguration();

public:

    /**
     * @brief myHost My host configuration.
     */
    static Host myHost;

    /**
     * @brief remoteHosts Configurations of remote hosts.
     */
    static QList<Host> remoteHosts;

    static ApplicationConfiguration& getInstance();

    /**
     * @brief loadConfig Loads application configuration from XML file.
     * @param filepath File path to configuration file.
     * @return True if config was read successfully, otherwise false.
     */
    bool loadConfig(QString filepath);

    /**
     * @brief printAppConfiguration Prints current application configuration.
     */
    void printAppConfiguration();

};

#endif // APPLICATIONCONFIGURATION_H
